The disclosure relates generally to user interfaces and more particularly to providing user feedback in response to user input.
Common computing systems support one or more panel displays and a touch input device that interfaces with a user, such as a touch panel display on a smart phone or tablet and an associated touch input transducer and touch sensor logic, where the touch input transducer may be, for example, a glass layer of the touch panel display with which the user's finger or fingers make contact. The user provides input through, for example, the touch input transducer, and the display shows the response of the computing system to the user's input.
FIG. 1 is a functional block diagram of a conventional computing system 100 having a user interface subsystem 102, such as a touch panel display of a smart phone or tablet and components used to implement a self refresh capability for the touch panel display; a source image device 104; and a touch input device 106. The source image device 104 may include, for example, the majority of the data and image processing capabilities of a smart phone or tablet. For example, the source image device 104 may include an accelerated processing unit (APU). As known in the art, an APU includes one or more central processing unit (CPU) cores and one or more graphics processing unit (GPU) cores on the same die. However, the source image device 104 may be or may include any suitable computing platform or processor(s), such as a CPU, a GPU, a CPU and a GPU but not an APU, one or more digital signal processors (DSPs), one or more application-specific integrated circuits (ASICs), etc. The touch input device 106 may include a touch input transducer as discussed above.
The user interface subsystem 102 includes a display 108 such as a touch panel display of a smart phone or tablet as discussed above, as well as panel display logic 110 and a self refresh memory 112. The source image device 104 includes a source image provider 114. The source image provider 114 generates updated image content for display on the display 108 that is responsive to the user input, such as by receiving an output signal 115 generated by the touch input device 106 in response to the user input, which may be, for example, a tap, swipe, or pinch. The source image provider 114 may include one or more of the computing platform(s) or processor(s) included within the source image device 104 such as, for example, a GPU or one or more processors that implement graphics processing operations but are not integrated as a GPU.
The source image device 104 also includes a frame buffer 116 and a display content engine (DCE) 118. As known in the art, the DCE 118 drives the output of the display 108 by providing source images to the panel display logic 110 for display on the display 108. As further known in the art, in order to implement the self refresh capability for the display 108, the panel display logic 110 stores the most recent source image received from the DCE 118 in the self refresh memory 112. During periods in which the DCE 118 stops providing new source images to the panel display logic 110, the DCE 118 is powered down and the panel display logic 110 retrieves the most recent source image received from the DCE 118 from the self refresh memory 112 in order to maintain the most recently received source image on the display 108.
As the requirements of computing systems, such as size constraints, complexity, battery life requirements, and so on, continue to become more strict, it will be necessary to realize greater power savings than those achieved by powering down the DCE 118. However, if additional components of the source image device 104, such as the source image provider 114, are powered down when updated image content is not being provided for display on the display 108, the user will perceive a delay in the response of the computing system 100 to his or her touch input. For example, the user may provide a touch input by using his or her finger to input a swiping motion to the touch input device 106 in order to scroll down. The user of a modern computing device expects a response to a touch input, such as the example swiping motion, on the order of 100 milliseconds (ms) after the user provides the touch input. However, powering down the source image provider 114 by, for example, putting the source image provider 114 into one of various types of “sleep” modes would involve sending a signal to the source image provider 114 to increase its power, and would further involve the source image provider 114 being “woken up” in response to such a signal to increase power. After “waking up” to a state that allows it to generate updated source image content, the source image provider 114 would then process information regarding the user input to generate that updated source image content, and would then need to provide that updated source image content to the display 108 via the frame buffer 116, the DCE 118, and the panel display logic 110.
These actions may cause the computing system 100 to take on the order of 500 ms after the user's touch input to provide the desired updated image content on the display 108, which in this example would be a scrolled-down version of the content that was originally displayed on the display 108 at the time of the user's touch input. Because of the potential delay on the order of 500 ms, the user would thus perceive the computing system 100 as being unresponsive for a time after his or her touch input.